﻿using System;
using LogHelper.SQLiteORM.Attributes;
using LogHelper.SQLiteORM;

namespace LogHelper
{
    public interface ILogContent
    {
        /// <summary>
        /// Id
        /// </summary>
        [PrimaryKey(SqliteDataType.Int, IsAutoIncrement = true)]
        int Id { get; set; }
        /// <summary>
        /// 消息
        /// </summary>    
        [Column(SqliteDataType.NVarchar)]
        string Message { get; set; }
        /// <summary>
        /// 标题
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string Title { get; set; }
        /// <summary>
        /// 用户名
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string UserName { get; set; }
        /// <summary>
        /// mac地址
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string Mac { get; set; }
        /// <summary>
        /// 版本号
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string Version { get; set; }
        /// <summary>
        /// 异常
        /// </summary>
        [Ignore]
        Exception Error { get; set; }
        /// <summary>
        /// 程序
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string Program { get; set; }
        /// <summary>
        /// 预留信息字段
        /// </summary>
        [Column(SqliteDataType.NVarchar)]
        string Info { get; set; }
        /// <summary>
        /// 堆栈跟踪串
        /// </summary>
        string StackTrace { get; }
        /// <summary>
        /// 日志时间
        /// </summary>
        DateTime Date { get; set; }

    }
}
